--- zgv-5.9.orig/src/readpng.c
+++ zgv-5.9/src/readpng.c
@@ -55,7 +55,6 @@
 fclose(global_png_infile);
 }
 
-
 void my_png_error(png_structp png_ptr,const char *message)
 {
 strncpy(jpeg_png_errmsg,message,JPEG_PNG_ERRMSG_SIZE-1);
@@ -63,7 +62,7 @@
 use_errmsg=1;
 
 /* cleanup is done after jump back, so just do that now... */
-longjmp(png_ptr->jmpbuf,1);
+longjmp(png_jmpbuf((png_ptr)),1);
 }
 
 
@@ -132,7 +131,7 @@
   return(_PICERR_NOMEM);
   }
 
-if(setjmp(png_ptr->jmpbuf))
+  if (setjmp(png_jmpbuf((png_ptr))))
   {
   /* if we get here, there was an error. */
   /* don't use local variables here, they may have been blasted */
